Add the standalone Qt desktop manager - #7
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add a separate Qt 6/QML manager for configured computers. The primary action follows connection state: Connect, Open desktop, or Restore display. Profiles, reconnect/disconnect, launcher creation, visible recovery guidance, keyboard navigation, and copyable diagnostics are available without exposing host recovery ownership to the GUI.
The small C++ bridge observes bounded asynchronous Unix-socket status and submits explicit argv-based requests through the existing Rust CLI. Polling pauses while inactive, unchanged status avoids model updates, and closing the manager leaves connections running. Removed computer configurations do not hide pending recovery records. The CLI catalog exposes names and profile choices without pairing material.
The UI includes a strictly isolated synthetic demo with connected, idle, connecting, recovery, unavailable, empty, and compact rendering scenarios. Graphical computer/profile editing and pairing remain subsequent work; in-app help points to the existing setup workflow. No live runtime/configuration migration or production connection changes were performed.
Validation: repository checks, Rust fmt/clippy/tests/build, 30 Python host/repository tests, 15 isolated daemon integration tests, Qt bridge and real QML interaction tests, and seven warning-free QML render scenarios passed locally. Visual review covered the standard, compact, and recovery views. CI builds/tests Qt on Linux and retains both required native Windows jobs. No release or main promotion.